package com.yuyue.springFramework.note01.entity;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

/**
 * 创建同时继承spring初始化和销毁接口的接口
 */
public class Lifecycle implements Initalize {
    //Java方式实现初始化和销毁方法
    @Override
    public void afterPropertiesSet() throws Exception {
        System.out.println("实现接口的方式初始化此类");
    }

    @Override
    public void destroy() throws Exception {
        System.out.println("实现接口的方式销毁此类");
    }

    //xml方式实现初始化和销毁方法
    public void xmlInit(){
        System.out.println("xml的方式初始化此类");
    }

    public void xmlDestroy(){
        System.out.println("xml的方式销毁此类");
    }

    //注解方式实现初始化和销毁方法
    @PostConstruct
    public void annotationInit(){
        System.out.println("注解的方式初始化此类");
    }

    @PreDestroy
    public void annotationDestroy(){
        System.out.println("注解的方式销毁此类");
    }
}
